import api from "@/utils/api.js"
import { c_GetCate, c_GetContentById, r_GetContentById } from "@/utils/request.js"


// 跳转到编辑页面
export function skipToEdit(url, isRedictTo) {
    // navigateTo 能保存上一页面
    if (isRedictTo) {
        uni.redirectTo({
            url: url
        });
    } else {
        uni.navigateTo({
            url: url
        });
    }
}

/**
 * @type 弹窗类型 3为等待 2为无icon 1为成功 0为失败
 * @content 弹窗内容
 * @skip_way 跳转方式 1为navigateTo 2为redictTo 3为switchTab 4为不跳转
 * @url 跳转的url
 */
export function confirm(type, content, skip_way = -1, url = "") {
    let icon = ""
    if (type == 1) {
        icon = "success"
    } else if (type == 2) {
        icon = "none"
    } else if (type == 3) {
        icon = "loading"
    } else if (type == 0) {
        icon = "error"
    }
    uni.showToast({
        title: content,
        icon: icon,
        duration: 2000
    });

    setTimeout(() => {
        console.log("等待跳转");
        if (skip_way == 1) {
            uni.navigateTo({
                url: url,
                success() {
                    let page = getCurrentPages().pop(); //跳转页面成功之后
                    if (!page) return;
                    page.onLoad(); //如果页面存在，则重新刷新页面
                }
            });
        } else if (skip_way == 2) {
            uni.redirectTo({
                url: url
            });
        } else if (skip_way == 3) {
            uni.switchTab({
                url: url,
                success() {
                    let page = getCurrentPages().pop(); //跳转页面成功之后
                    if (!page) return;
                    page.onLoad(); //如果页面存在，则重新刷新页面
                }
            });
        }
        uni.hideToast();
    }, 1500);
}


// 数组中有则删除，无则添加
export function modArr(arr, index) {
    let len = arr.length
    arr = arr.filter(function(item) {
        return item != index
    })
    if (len == arr.length) {
        arr.push(index)
    }
    return arr
}

// 对象中有则删除，无则添加
export function modObject(obj, index) {
    let tmp = {}
    if (obj[index]) {
        for (let i in obj) {
            if (obj[i] != index) {
                tmp[obj[i]] = obj[i]
            }
        }
    } else {
        tmp = obj
        tmp[index] = index
    }

    return tmp
}

// 更新收藏列表
export function c_UpdateCate() {
    c_GetCate().then(res => {
        console.log(res);
        uni.setStorageSync('collectCate', res.data.data)
    }).catch(err => {
        console.log(err);
    })
}

// 更新收藏内容列表
export function c_UpdateContent(data) {
    c_GetContentById(data).then(res => {
        console.log(res);
        uni.setStorageSync('collectContent-' + data.cid.toString(), res.data.data)
    }).catch(err => {
        console.log(err);
    })
}

// 获取记录内容
export function r_GetContent(rid, data) {
    let id = rid.toString()
    data = uni.getStorageSync('recordContent-' + id)
    data = data != null ? data : []
    if (data.length == 0) {
        return r_UpdateContent(id)
    } else {
        return data
    }
}

// 更新记录列表
export function r_UpdateContent(id) {
    let userId = uni.getStorageSync('userId')
    let data = { "rid": id, "user_id": userId }
    r_GetContentById(data).then(res => {
        console.log(res);
        uni.setStorageSync('recordContent-' + id, res.data.data)
        return res.data.data
    })
}

// 添加check变量
export function addCheck(data) {
    for (let i = 0; i < data.length; i++) {
        data[i]["Checked"] = false
    }
    return data
}
